Frequently Asked Questions on Programmer's File Editor -------------------------- [Answers in this file refer to facilities available in PFE 0.06.002] You may find information on any problem you have encountered in the problems.txt file, which lists known major problems in the current release -- Q. What version of PFE is recommended for my current environments? I use Windows 3.10, Windows NT and Windows 95 A. PFE is supplied in two forms: the 16-bit edition (PFE.EXE) and the 32-bit edition (PFE32.EXE). The recommended versions for various platforms are these: Windows 3.1x 16-bit edition Windows NT 3.51 32-bit edition Windows 95 32-bit edition Although the 32-bit edition should function on a Windows 3.1x system if you have Win32s 1.25 or later installed, its use is not recommended. Some functionality is not available, and the version is not extensively tested in this mode. There's a more detailed table of what runs in which environment in the README.TXT file accompanying the release ---- Q. How can I arrange that edit windows are created to use the maximum area available in the MDI client area? A. You can do this with the Options Preferences command. Start the preferences dialog and select "Window Control" from the list of option categories on the left. This shows you a panel that lets you configure exactly how child windows will be created ---- Q. Why don't all the TrueType fonts I have installed on my system appear in the printer and screen fonts dialogs? A. Because PFE is a programming-oriented text editor, rather than a word processor, it supports only fixed pitch fonts (ones in which all characters occupy the same width on screen or paper). There are, sadly, very few fixed pitch fonts available. There are no plans to add variable fixed pitch support in a future release. ---- Q. How can I ensure that if I associate PFE with a file type in File Manager, double clicking on a file of that type will bring up a new PFE window rather than opening the file in an already-running instance? A. Normally, whenever you start PFE, it will look to see if an instance is already running. If it is, this instance is activated, and the names of any files you give on the command line will be passed to it across a DDE link. If you want to force a new instance of PFE to start instead of activating an existing one, use the '/m' command line flag. ---- Q. I want PFE to remember the names of more than the last 5 files I've edited, so I can pick them quickly from the File menu. How can I do this? A. You can configure the Most Recently Used (MRU) list with the Options Preferences command. Start the preferences dialog, and select "File Menu" from the list of option categories on the left. This shows you the panel that configures the MRU list. You can configure the total size of the list, and how many files from the list will appear on the File menu (you will be able to select from the entire list with a dialog command that will follow the list on the menu). You can also specify that the File menu should be drawn in two columns rather than one if you want to show a large number of files. Note that you will need to exit PFE and restart it before your changes take effect. ---- Q. I don't like the standard Windows File Manager, and prefer to use a third party one. How can I get the File Manager item on the Execute menu to start this instead of the standard one? A. You can configure what the various "Manager" items on the Execute menu do with the Options Preferences command. Start the preferences dialog and select "Windows Managers" from the list of option categories on the left to show the panel that handles this For each of the menu items, you can specify that PFE should run either the standard manager program supplied with Windows, or runs a command line of your choice ---- Q. I use 4DOS-for-NT as my Windows/NT command processor instead of Microsoft's cmd.exe - how can I get the Execute DOS Prompt and associated tool bar button to start this? A. Normally, PFE will use the executable file named in the COMSPEC environment variable as the command processor. If this variable is not set, it uses the standard defaults "command.com" under Windows 3.1x, and "cmd.exe" under Windows NT You can define the command processor you want to start with the Options Preferences command. Start the preferences dialog and select "DOS Shell" from the list of option categories on the left to show the relevant panel, and define your preference ---- Q. What's the difference between the Execute Launch Application command and the Execute Launch Windows Tool command? A. In terms of what they accomplish - to start a Windows or a DOS application running independently of PFE - there's none. Execute Launch Application starts a dialog that prompts you for a command line; it remembers the last command line you used, but that's all. The Execute Launch Windows Tool command, by contrast, lets you define a whole set of command lines, and label each one with a meaningful name. For example, you could name a tool entry as "Edit Help File", and associate a command line that runs Word for Windows to edit a file. Or you could have one called "Build data file" that runs a DOS application with a set of files on its command line. You just pick the function you want from your mnemonic list, without needing to bother about what the command line has to be ---- Q. I use Windows NT on MIPS and DEC Alpha platforms - is there an executable of PFE32 for these? A. PFE32 exists only for Intel and PowerPC hardware. There are no plans for MIPS or DEC Alpha versions ---- Q. How can I record my keyboard macros for use in other sessions? A. This ability is not a part of the current PFE release. A future version will include savable keyboard macros, implemented as editable macro libraries ---- Q. How does PFE manage to allow more than 32K of text to be edited in an edit control? A. PFE doesn't, in fact, use standard edit controls to show text. The windows you see are ordinary MDI child windows, and the text is drawn explicitly by PFE as required. Internally, a complicated memory management system keeps track of where each line of each file is stored. ---- Q. Why, if I have word wrap switched on for a window, will PFE wrap text only when I'm typing at the end of the line and not when I insert in the middle of it? A. The current design of PFE is set to do things that way for efficiency reasons. However, the Edit Text Reformat and Edit Text Reformat Paragraph commands allow you to reflow text to fit the current wrap margin at any time. ---- Q. Why do I get "Help file not found" when I ask for help? A. Make sure that you have the help file pfe.hlp in the same directory as the pfe.exe or pfe32.exe executable program ---- Q. Why is the default of 32 undoable actions so small? Surely, when I'm typing text, I'll fill that up in 32 keypresses? A. Actually, no - the undo system doesn't work in quite that way. It records specific _actions_ in its stack, such as a drag-drop move of text, or a cut of the highlighted text. When you're typing, each keypress is considered as part of a _single_ action, which is terminated only when you do something different, like moving the caret with the arrow keys, or switching to another window. Then, when you use the Undo Typing command, PFE will remove all the typing you've performed in that action (a future release of PFE will probably let you undo typing actions character-by-character too) You can change the number of undo actions that PFE records with the Options Preferences command. Start the preferences dialog and select "Editing Files" from the list of option categories on the left to show the relevant panel that lets you set the size of the list ---- Q. If I select some text and start to drag it to a new location, how can I change my mind without having to drop the text somewhere and then undo the action? A. You can cancel a drag-and-drop in one of two ways. If the highlighted text is visible in the window, move the mouse cursor somewhere inside it and release the left button. Alternatively, press the Escape key before you release the left mouse button. ---- Q. How can I use drag-and-drop to move text from one window to another? A. In the current design, PFE supports drag-and-drop only _within_ a window. Inter-window operation may be added in a future release. ---- Q. How can I configure PFE so that the File Save command and its associated tool bar button are always available? At the moment, I can only use the command when I've changed the file in some way. A. By default, PFE enables the File Save command only when the file showing in a window has altered. This gives you some feedback (complementing the 'file changed' marker in the status bar) that helps you avoid un-necessary saves. You can use the Options Preferences command to change this setting. Start the preferences dialog and select "Saving Files" from the list of option categories on the left to show the relevant panel. Check the box labelled "Allow File Save on unaltered files" to make the File Save command and the toolbar button always available ---- Q. I like the window that runs DOS commands with output capture to start full screen, and to have specific tuning details set. How can I do this? A. DOS commands with output capture are run by either the pfedos.exe (for Windows 3) or pfedos32.exe (for Windows NT) helper modules. To change how the windows are created, set up suitable PIF files pfedos.pif and/or pfedos32.pif in the same directory, and use the Windows PIF editor to set the details as you require ---- Q. How do I insert a Form Feed into a file, or specify it in the Find and Replace dialogs? A. To insert a Form Feed (or any other non-typable character) use the EditTextInsertASCIICode command, which is by default mapped to Ctrl+Q. This starts up a dialog that lets you select Esc and Ctrl+A - Ctrl+Z easily by name, or specify any ASCII code you like as a number. To specify Form Feed in the Find or Replace dialogs, write it as the two- character sequence "\f". You can also specify end-of-line by "\n" and tab by "\t"; and you can specify an arbitrary code as "\xhh", where "hh" represents two hex digits. Remember that if you actually want a "\" character, you need to write it as "\\". ---- Q. Why do I see lots of files with type .&&& (PFE version 0.05.006) or .$$$ (PFE version 0.05.007 and later) in my directories? A. These are the backup files that PFE produces whenever you save a file. If a file of the same name exists already, PFE renames it with a type of .$$$ before writing the new data to disk. The Options Preferences command allows you to configure some defaults for how backup is handled. Start the preferences dialog and select "Backup" from the list of option categories on the left to show the relevant panel. In this dialog, you can disable all backup permanently; choose to have PFE make backup files to the same directory as the original file but with a file extension of your choice; or to make the copy into a file of the same name as the original, but in a subdirectory of the directory containing it The File Save As dialog and the Options Default Modes and Options Current Modes dialogs also let you control some backup actions on a per- file basis ---- Q. I am using the Italian version of Windows 3.1x, and when I use the File Open command I can only specify the name of the file to open by typing it in to the file name control at top left - selecting the name by mouse from the list of files doesn't work A. The various file opening dialogs are not controlled by PFE, but instead are standard Windows features provided by Microsoft. The code that creates the dialogs is held in a file called "commdlg.dll" which is kept in your Windows system directory. Some early versions of the Italian language commdlg.dll appear to have bugs that affect the dialogs when used by PFE (and probably other applications too). You should contact your supplier or your local Microsoft company to obtain an up-to-date version of the commdlg.dll file. ---- Q. I used the Options Preferences, Options Default Modes and Options Current Modes command to set background colours for my edit windows and the main PFE workspace. Why are the colours I get not the ones I selected? A. Depending on what type of video adapter you have fitted to your computer, only a very few of the infinite number of colours can be shown as pure or "solid" colours. Normally your system will provide 16 such solid colours, and you will see these in the block of colours shown at top left in the colour selection dialog. When Windows is asked to display some other colour, it has to use a technique known as "dithering", that simulates the shade you want. For example, it might produce a pale blue by drawing a fine grid of dark blue lines on a white background; this will appear to be the colour you wanted when seen from a suitable distance. Dithered colours are very unpleasant to use as backgrounds for text, and writing text on such a background is very much slower that if the background were a solid colour. For these reasons, PFE does not support the use of dithered colours, but instead translates the colour value you select to the closest available solid colour. ---- Q. Does PFE run correctly under Windows NT 3.51 and Windows 95? A. Yes it does. You should use the 32-bit edition in these environments, as some facilities are not available with the 16-bit edition. ---- Q. I work with a number of large projects and would like to have separate customised PFE environments. Can I do this? A. You can use PFE's ability to locate its initialisation file pfe.ini or pfe32.ini in arbitrary directories to do this. Start the Options Preferences command, and select the "Startup" panel from the list on the left. In the panel on the right, click the "In startup directory" button. PFE will now take its initialisation file from the directory it starts in, so you can have specific Program Manager icons that start t in directories specific to each individual project. The default key map file pfe.key or pfe32.key is also looked for in this directory, and perhaps you will want to do this. However, if you want to have only one centralised key map file, you should use the "key Mapping" panel of the Options Preferences dialog to set a specific path name for the key map file that is independent of the initialisation directory. This can, of course, be a path in your Windows directory. -- Q. What are the licensing arrangements for PFE? I use it at home and would like to do so at my work too. A. PFE is FreeWare. You don't need to register to use it, and there is no fee. You can use it at home, or at work without restriction. If you'd like to include PFE on the distribution disks with a commercial product you can obtain a licence that will enable you to do this. The help file contains full details on the current usage and licensing position. -- Q. I'm editing files on a NFS-mounted partition, and whenever I save my edit changes the long name of the file disappears and all I see is the NFS-generated 8.3 name. What's happened? A. The problem is in the way that PFE makes backups when you save files. In the current version, any existing file is renamed to be the backup copy, and a new file is created with the old name to save the changes into. The step of renaming the file breaks the association that NFS maintains between the DOS 8.3 name and the file's long name. Thus, when PFE creates the new file to save - using the 8.3 name - NFS can no longer translate this to the "real" name and so has to pass the 8.3 name itself to Windows. The only circumvention available in the current release is to disable making backup copies in these circumstances. -- Q. I'm using Windows NT on an Intel system and also on a PowerPC. The PowerPC version of PFE does not think that keymap and template files I made on the Intel version are valid. What's wrong? A. For this release of PFE it was not possible to make the format of .key and .tpl files the same between versions of the 32-bit edition for different hardware platforms. This will be corrected in a forthcoming release -- Q. Why can't I open more than one file at a time with the File Open and File View commands? Previous versions of PFE allowed me to do this. A. Because of a problem in handling long file names that contain spaces, due essentially to a design flaw in Windows, it became necessary to change the default mode of operation of these commands in version 0.06.002 and later. Although the problem manifests only on Windows NT, the design was altered in all editions for consistency. Now by default the file opening commands allow you to select only one file at a time, and on Windows NT all long file names will appear correctly. If you want the old behaviour, allowing multiple files to be selected, use the Options Preferences command and select it from the General panel. But be warned that if you do select this option, long file names with spaces will appear as 8.3 names if you're using Windows NT with the Windows 3 user interface. There's more on this topic in the next item -- Q. I'm using Windows NT with the Windows 3 user interface, and I used Options Preferences to allow me to open more than one file at a time in the File Open command. However, my long file names don't apear any more - I just see the DOS 8.3 names A. There is a basic flaw in Microsoft's design of the library that provides the standard file open dialogs (this code is not part of PFE). Essentially, it can't handle long file names THAT CONTAIN SPACES if you also allow multiple files to be selected. Long file names without spaces are handled correctly; but Microsoft's code automatically shows those with spaces as 8.3 names in order to get around their design error. In its default mode of operation, PFE allows you to open only one file at a time, and here the problem does not arise. Unfortunately, there is no way to beat this problem - if you want to open multiple files at one time, you won't see names with spaces in. On the good side, though, the problem does not arise at all if you're running Windows 95, or if you have the Windows 95 user interface on Windows NT. -- Q. I'm using the 32 bit edition, and I've set up associations so that I can open files of type ".c" in PFE by double clicking the names in File Manager and Explorer. It works fine most of the time, but if the name contains spaces it doesn't - PFE seems to think each part of the name is a filename all by itself A. When you double click on a filename that has an association, Windows issues the associated command on your behalf, so that what's started might be, for example, pfe32 c:\sources\file.c Many applications allow you to specify only one file on the command line, and they'll take the WHOLE of the command line as the file name. Thus, a command like wordpad c:\sources\my source file.c will work, as the application takes c:\sources\my source file.c as the file name. However, PFE allows you to specify multiple files on the command line, and as for any application, the command line components are separated by spaces. Thus, if you caused this command to be issued via an association pfe32 c:\sources\my source file.c PFE thinks you want to edit three files, called c:\sources\my, source, and file.c You can easily get round this by setting up the association in a different way. When you define it, make the command that's run like this pfe32 "%1" Now, when you double click the file name and Windows issues the command, it will replace the %1 in the associated line with the file name, so that what gets run is pfe32 "c:\sources\my source file.c" The quotes will make PFE see the string as a single file name, and it will all work as you want. -- Q. How do I change the font that I use to print files out? In previous releases there was a "Font" button in the Print Setup dialog, but it's gone in 0.06.002 A. In version 0.06.002 the printer system has been redesigned to use the same user interface and dialogs as other applications; the Print and Print Setup dialogs you see are now the standard ones that are part of Windows. Unfortunately, the way that Windows works with these dialogs means that it isn't possible to select fonts from them. Accordingly a new command File Page Setup has been added, which starts a dialog allowing you to select fonts and margins for the current printer -- Q. Previous versions of PFE used to remember the printer I was last using and select this; in 0.06.002, though, I always seem to get the system default printer when I start it A. As described in the previous item, the printer system in 0.06.002 has been redesigned to use the standard user interface and methods. As part of this, PFE now works in the Windows standard way and sets you up to work initially with your system's default printer. -- Q. If a drag and drop a file from the Windows 95 Explorer onto a desktop shortcut to PFE32.EXE, why do long file names seem to get changed to their 8.3 equivalents? A. This appears to be a quirk in how Windows 95 handles shortcuts. When you drag and drop in this way you're not using the same mechanism as when you drag and drop onto a real PFE window - this operation works with long file names as you expect. With a shortcut, though, Windows 95 simply works out the command to issue on your behalf. So if you drag and drop a file called c:\source\file.txt onto the shourtcut, Windows 95 issues the command line pfe32 c:\source\file.txt on your behalf. However, for some reason the designers of Windows 95 set it so that long file names are always translated into their 8.3 form when doing this - this is probably because they want to be sure everything will work when the shortcut is to an old 16-bit application, which can't handle long file names. -- Q. I'm using the Execute DOS Command To Window command to run my compiler, which will prompt me for input if there's an error. Using the 32-bit edition I see the compiler output in the console window, but I never see the prompts and the output window seems to lock up, although if I type the expected reply blind it all seems to work. What's going wrong? A. The problem here arises because PFE is essentially trying to subvert the compiler, fooling it into thinking that it's writing to the screen (as it normally would) when actually it's sending all its output to PFE (actually, to a small helper program that PFE runs for this purpose). If the compiler or other program is simply writing, then it all works fine. But as you've seen, there are problems if the program wants you to perform output. Normally, when a program writes to the screen, Windows makes sure that all the output is sent there directly and not stored in the program's or Windows's buffers. Thus, you see the prompt as soon as the program writes it, and you know what to do. But when PFE runs the compiler, the output is actually not to the screen, but to a pipe (under Windows NT) or a communication file (under Windows 95). The compiler itself doesn't know the difference, but the underlying I/O systems and Windows certainly do. Since they know the program isn't writing to the screen, the compiler's output will be _buffered_ for efficiency - thus it's quite possible, and actually most probable, that the prompt string will be stored in a buffer waiting to be written to the screen when the compiler asks you to type - so you never see the prompt. There is no way round this problem, unfortunately. Although techniques are available for programs to detect what's happening and make sure that you _do_ see the prompt, you'll be lucky to find one that uses them. The moral, sadly, is that the Execute DOS Command To Window command is not suitable if the program you want to run will ever require you to type in to it rather than simply generate output -- Q. I like to work with tab width of 4 in my files, and I can set this up with the Options Current Modes command. However, if I edit the same files again, the tab setting reverts to the default of 8. How can I change this? A. The Options Current Modes command affects the modes applied to only the current window; the effect is limited to that window, and when it closes the settings are lost. To do what you want - which is to define the _default_ modes for a file - you need to use the Options Default Modes command. You'll find full information on how to use this command in the help file. Basically, you can define a number of "mode groups", which are collections of filename patterns like "*.c *.h readme.*". With each mode group you define the default modes you want; then, if any file you open has a name matching something in a mode group, the relevant default modes are applied. -- Q. I've switched to using PFE for all my editing instead of NotePad, but there's one thing I miss - I can't automatically print files by dropping them onto Print Manager as I could with NotePad. What can I do? A. Versions of PFE prior to 0.06.002 did not support automatic printing in this way. However the facility is now available; all you need to do is to set the 'print' association for a file type to be pfe /p %1 for the 16-bit Edition, or pfe32 /p "%1" for the 32-bit Edition (note that the quotes here are important). Now you'll be able to drag and drop a file onto Print Manager or a printer shortcut and PFE will print it for you. --